This invention relates generally to the transmission and storage of data on RAID devices and clustered computer systems.
Digital video and television systems need high bandwidth data transmission and low latencies. Redundant arrays of inexpensive disks (RAID) support high bandwidth data transfers and very low latencies. RAID storage uses redundancy and/or parity blocks to mask the failure of a disk. RAID arrays have limited capacity to handle failures due to fixed reconstruction cache size.
RAID storage divides a received data stream into a sequence of blocks and write consecutive blocks of the sequence to different disks in the array. To retrieve data, the blocks are read from the disks of the array and are reconstituted into the original data stream from the read blocks. To increase reception and transmission speeds, the various disks of the array of the RAID storage may be written to and read from in parallel.
Individual disks of a RAID storage configuration will occasionally stall or respond slowly to an access request due to disk surface defects and bad block re-vectoring. Another problem occurs when a drive is being rebuilt or reconstructed from information on other drives. During a slow response, the entire RAID configuration may wait while one disk transmits requested data. Thus, a single slowly responding disk can cause a long latency for a read operation from the RAID configuration.
For digital video and cable systems, one slowly responding disk can cause a disaster, because data needs to arrive at a video receiver at a substantially constant rate to keep the receiver's input buffer full. Continued long transmission latencies can deplete the input buffer. If a slow RAID configuration causes a transmission gap so that the receiver's input buffer empties a viewer may perceive a noticeable pause in the video being viewed. Defect-free transmission of video requires that such pauses be absent.